home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Gold Collection / Software Vault - The Gold Collection (American Databankers) (1993).ISO / cdr17 / wlplt231.zip / WLPLOT.DOC < prev    next >
Text File  |  1993-06-29  |  46KB  |  1,343 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.                                                         Reference Manual for
  16.  
  17.  
  18.                                                           Wesley B. Loewer's
  19.  
  20.  
  21.                                                             Plotting Program
  22.  
  23.                                                                 version 2.31
  24.  
  25.  
  26.  
  27.                                               (C) 1990-92,  Wesley B. Loewer
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.                                                Manual Updated: June 29, 1993
  63.  
  64.  
  65.  
  66.                                                                       Page 1
  67.  
  68.                               Table of Contents
  69.  
  70.  Topic                                                                  Page
  71.  
  72.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
  73.  New Features  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
  74.  Latest Version  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
  75.  Hardware  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
  76.  Installing  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
  77.  Getting Started . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
  78.  Common Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
  79.  Entering Information  . . . . . . . . . . . . . . . . . . . . . . . . . . 8
  80.  Entering Equations  . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
  81.  Special Characters  . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
  82.  Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  10
  83.  Algebraic Order of Operations . . . . . . . . . . . . . . . . . . . . .  13
  84.  Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14
  85.  Saving & Retrieving . . . . . . . . . . . . . . . . . . . . . . . . . .  14
  86.  PCX Format  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14
  87.  Printing  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  14
  88.  Revision History  . . . . . . . . . . . . . . . . . . . . . . . . . . .  15
  89.  Custom Distributions  . . . . . . . . . . . . . . . . . . . . . . . . .  19
  90.  In Closing  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  20
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.                                  Wesley Loewer's Plotting Program -- WL-Plot
  127.  
  128.  
  129.  
  130.                                                                       Page 2
  131.  
  132.  Introduction:
  133.  WL-Plot was designed to help students understand mathematical graphs a
  134.  little better by allowing them to quickly plot a graph to see what it looks
  135.  like.  Often, students get bogged down in button pushing and point-by-point
  136.  plotting and fail to grasp the real significance behind the graph.  The
  137.  goal of this program is to eliminate the busy work of plotting, freeing the
  138.  student to proceed to higher level thinking.
  139.  
  140.  Speaking of free, that's one of the nice things about WL-Plot.  (See the
  141.  "In Closing" section on page 20 of this document for the conditions in
  142.  which this program may be used without charge.)  This may not be the best
  143.  plotting program that you can find, but you can't beat it for the price.  I
  144.  have tried to include as many features that I thought students and teachers
  145.  could actually use.  Please distribute WL-Plot to anyone who can use it.
  146.  
  147.  
  148.  New Features:
  149.  Some of the more significant features that have been added to WL-Plot since 
  150.  the last release include the following.
  151.  
  152.       The equation parser now has the ability to save values in variables,
  153.       allowing for composite functions.  For example, if f(x)=2x+1 and
  154.       g(x)=x², then f(g(x)) can be written as "x²->g 2g+1" while g(f(x)) can
  155.       be written as "2x+1->f f²".
  156.  
  157.       Complete overhaul of the Conic Section module.  Conic sections as well
  158.       as their degenerate shapes can be entered in either their standard
  159.       forms or in the general quadratic form.  Graphs can be easily rotated. 
  160.       Rotated graphs are now compatible with the "Show Asymptotes and Focal
  161.       Points" option.  Overall accuracy in the graph, especially rotated
  162.       graphs, is much improved.
  163.  
  164.       Added the ability to use expressions to enter constants.  For example,
  165.       at the prompt for a constant or a Min/Max, the expression 1+√3 can be
  166.       entered.
  167.  
  168.       Added the ability to plot indefinite integrals.
  169.  
  170.       Optimized the plotting process considerably for equations with lots of
  171.       constants.
  172.  
  173.       Changed the way implied parenthesis and implied multiplication is
  174.       handled.  The new order of operation is: implied multiplication;
  175.       implied parentheses; explicit multiplication, division, modulus.
  176.  
  177.       Added the ability to use |x| to represent the absolute value.  The     
  178.       function abs(x) is still available.
  179.  
  180.       When viewing a graph, the show coordinates option can now display      
  181.       polar (r,Θ) coordinates, either degrees or radians, in addition to the 
  182.       normal cartesian (x,y) coordinates.
  183.  
  184.       Added the Recursive Relation Plotter Module.
  185.  
  186.       Added a switch in the Functions module to turn off radians mode so     
  187.       that users could more easily deal with degrees.
  188.  
  189.  
  190.                                  Wesley Loewer's Plotting Program -- WL-Plot
  191.  
  192.  
  193.  
  194.                                                                       Page 3
  195.  
  196.  See Revision History on page 14 for complete details.
  197.  
  198.  Latest Version:
  199.  The latest version of WL-Plot can be found at
  200.  
  201.        Tranquility Base BBS                 Data Warp Premium BBS
  202.           (713) 893-9124                        (713) 355-6107
  203.            Spring, Texas                        Spring, Texas
  204.  
  205.  
  206.  WL-Plot version 2.31 was distributed as WLPLT231.ZIP.  When passing WL-Plot
  207.  along to others, please use just this file.  Currently, the compressed
  208.  archive contains the following files: 
  209.  
  210.    wlplot.exe,  wlplot.doc,  wlplot.hlp,  tutorial.wp,
  211.    gh.com,  helvb.fon,  plus sample files
  212.  
  213.  The tutorial.wp file is a 15 page tutorial in WordPerfect (tm) format.  If
  214.  you would like to use this tutorial and do not have any way of printing a
  215.  WordPerfect file, send $5 to the address at the end of this file and I will
  216.  send you a printed copy.
  217.  
  218.  See p.17 for information on ordering custom distributions.
  219.  
  220.  
  221.  Hardware:
  222.  Because WL-Plot was produced mainly for classroom use, care was taken to
  223.  make certain that the program would work on the limited equipment which is
  224.  still being used in many schools.
  225.  
  226.  Required - You will need an IBM-compatible computer with DOS version 2.0 or
  227.  later.  The program should work with as little as 300K of available memory
  228.  for full VGA mode, even less for CGA mode.  (See p. 17 of this document for
  229.  details for ordering a special version that will work on 256K computers.)
  230.  The program can be run from either a 360k or higher floppy drive or a hard
  231.  drive.  You will also need some sort of graphics capability, either CGA,
  232.  EGA, MCGA, VGA, or Hercules.  The Hercules adapter is only partially
  233.  supported and requires that the utility MSHERC must run first before
  234.  starting WL-Plot.  The stand-alone Curve Fitting program can run in a
  235.  limited fashion without any graphics capability.
  236.  
  237.  Optional - A mouse is quite useful but not necessary.  A math coprocessor
  238.  will significantly speed up the plotting process.
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.                                  Wesley Loewer's Plotting Program -- WL-Plot
  255.  
  256.  
  257.  
  258.                                                                       Page 4
  259.  
  260.  Installing WL-Plot:
  261.  To install WL-Plot, simply copy the all the files to a floppy disk or hard
  262.  drive.  If disk space is limited, such as with a bootable 360k floppy
  263.  system disk, then copy only the required files: WLPLOT.EXE, WLPLOT.HLP,
  264.  HELVB.FON.
  265.  
  266.  The environmental variable WLPLOTHELP can be set at the DOS command line to
  267.  indicate a different drive or directory for the WL-Plot help file.  For
  268.  example:
  269.  
  270.    SET WLPLOTHELP=B:\
  271.  
  272.  indicates that the help file, WLPLOT.HLP, is located in the B: drive.  The
  273.  use of WLPLOTHELP is purely option and is not necessary if the help file is
  274.  in the current directory.
  275.  
  276.  
  277.  
  278.  
  279.  
  280.  
  281.  
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.  
  297.  
  298.  
  299.  
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.                                  Wesley Loewer's Plotting Program -- WL-Plot
  319.  
  320.  
  321.  
  322.                                                                       Page 5
  323.  
  324.  Getting Started:
  325.  Start the program by typing "wlplot" at the DOS prompt.  The user will be
  326.  presented with the following choices.
  327.  
  328.  
  329.  Functions
  330.       Plots functions in Cartesian, Polar, or Parametric form.  Functions
  331.       may be entered in either Algebraic or RPN (Reverse Polish Notation,
  332.       also called post-fix notation) modes.  Allows grids, logarithmic
  333.       scales, up to 10 user defined variables, separate control over viewing
  334.       window and domain, and a library of over 75 built in operators,
  335.       functions, and constants (see page 10).
  336.  
  337.  Conic Sections
  338.       Plots parabolas, circles, ellipses, hyperbolas and their degenerate
  339.       shapes.  Equations may be entered in standard or general form.  Also
  340.       shows focal points, asymptotes, and directrix.
  341.  
  342.  Derivatives & Integrals
  343.       Plots functions along with its indefinite integral and its 1st and 2nd
  344.       derivatives.
  345.  
  346.  Relation Plotter
  347.       A somewhat slow but extremely powerful plotter for graphing relations
  348.       that are not necessarily functions, such as "y=abs(x)^sin(y)."  It can
  349.       also graph a system of inequalities, such as "y < 0.5x and x > 1 and
  350.       x*y < 2."  It is also good for those situations where it is just too
  351.       difficult or even impossible to solve for either x or y, such as
  352.       "x^2+x^3*y^3-1-y=0."
  353.  
  354.  Bifurcations
  355.       A bifurcation fractal plotter.  Demonstrates concepts such as Chaos
  356.       and period doubling.  For example, try the population equation
  357.       r*p*(1-p) with initial value=0.5, x min=1, x max=4, y min=0, y max=1,
  358.       with r as the independent variable and p as the dependent.  It's slow
  359.       so be patient.
  360.  
  361.  Recursive Relations
  362.       Plots recursive relations.  Allows a user to describe a relation in a
  363.       such a manner where both the horizontal and vertical component values
  364.       can depend on previous values of each other.  This can be very useful
  365.       in determining the attractors in certain fractals, such as the Henon
  366.       Map and the "orbits" involved in calculating such things as the
  367.       Mandelbrot Set.
  368.  
  369.  Curve Fitting
  370.       Fits a line or curve to a set of data points.  Uses linear,
  371.       logarithmic, exponential, power, and up to 9th degree polynomial
  372.       models.  (The stand alone version of this program can run without a
  373.       graphics adapter card.  Graphics is not needed to calculate the
  374.       coefficients of the best fit line or curve such as slope and
  375.       intercept.  Graphics capability is needed, however, if the curve is to
  376.       be displayed on the screen or printed.)  Up the 1500 data points are
  377.       allowed.
  378.  
  379.  
  380.  
  381.  
  382.                                  Wesley Loewer's Plotting Program -- WL-Plot
  383.  
  384.  
  385.  
  386.                                                                       Page 6
  387.  
  388.  Use CGA Graphics
  389.       Sometimes it is necessary to force WL-Plot to use CGA graphics, even
  390.       if VGA is available.  This could be due to having a very limited
  391.       amount of memory, or trying to print with a version of DOS prior to
  392.       4.0.
  393.  
  394.  Exit
  395.       Exits the program.
  396.  
  397.  
  398.  The above menu can be skipped by indicating the desired module on the
  399.  command line.  For example,
  400.  
  401.       wlplot function
  402.  
  403.  will cause WL-Plot to go straight to the function plotting module.  The
  404.  full syntax is
  405.  
  406.  wlplot [cga] [f[unction]] [co[nic]] [d[erivative]] [rel[ation]]
  407.         [b[ifurcation]] [rec[ursive]] [cu[rve-fit]] [cf[it]] [/b]
  408.  
  409.  where the characters between the []'s are optional.  The module name need
  410.  not be entered in full.  All that is required is enough of the name to make
  411.  it unique.  For example, the following are valid
  412.  
  413.       wlplot co         is acceptable for conic
  414.       wlplot d          is acceptable for derivative
  415.       wlplot cu         is acceptable for curve-fit
  416.       wlplot cf         is also acceptable for curve-fit (cfit)
  417.  
  418.  while
  419.  
  420.       wlplot c          is ambiguous between conic and curve-fit.
  421.  
  422.  The "cga" option forces the use of CGA graphics, even if VGA is available. 
  423.  This may be needed to print in older versions of DOS or to run with less
  424.  memory.
  425.  
  426.  The last option "/b" forces the menu screens to have a black background
  427.  instead of blue one.  This easier to read on some monitors.
  428.  
  429.  
  430.  Common Features:
  431.  All of the modules share a similar user interface.  Below is a summary of a
  432.  few features that are common to most of the modules.  For a more detailed
  433.  description, see the help file, WLPLOT.HLP.  This help file is specially
  434.  formatted for WL-Plot, but can be view by any text editor.  See the end of
  435.  WLPLOT.HLP for details on the use of the Generate Help Utility (GH.COM) and
  436.  how to safely modify the help file.  The information in this help file is
  437.  available from within the program by pressing the <F1> key.  With the
  438.  Hercules Graphics Adapter, the <F1> help feature is available only after a
  439.  graph has been plotted.
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.                                  Wesley Loewer's Plotting Program -- WL-Plot
  447.  
  448.  
  449.  
  450.                                                                       Page 7
  451.  
  452.  After selecting a particular module from the main menu, another menu
  453.  appears on the screen with several groups of options listed together.  To
  454.  move from one group to another, you can use the following keys:
  455.  
  456.       Function key (ex. <F3>) - moves to a particular group
  457.       <Tab> - moves to the next group
  458.       <Shift-Tab> - move to the previous group
  459.  
  460.  To move to different options within a group, use the up and down arrow
  461.  keys.  If you have a mouse, simply point the mouse arrow to the desired
  462.  selection and click the left mouse button.  A ">" will appear at the left
  463.  of the selected option.  There are four different types of options on the
  464.  menu screen.  Each type is explained with an example.
  465.  
  466.  Toggle type         The option is turned on or off by pressing the
  467.                      space bar, the return key, or clicking on the
  468.                      option with the left mouse button.  If an X
  469.                      appears in the parenthesis, the option is turned
  470.                      on.
  471.  
  472.  Example:
  473.  (X) Grid            The grid is turned on.
  474.  Example:
  475.  ( ) Grid            The grid is turned off.
  476.  
  477.  Choice type         A list of choices is presented.  A choice is
  478.                      selected by pressing the space bar, the return
  479.                      key, or clicking on the choice with the left mouse
  480.                      button.
  481.  
  482.  Example:
  483.  ( ) Cartesian       The list presented on the left can only have one
  484.  ( ) Polar           choice between them.  In this case, the Polar
  485.  (*) Parametric      graph is selected, so the graph cannot be
  486.                      Cartesian or Parametric.
  487.  
  488.  Example:
  489.  (2) Cartesian       The Cartesian type graph has been selected.  The
  490.  ( ) Polar           "2" indicates that 2 equations will be
  491.  ( ) Parametric      simultaneously plotted.  A "1" would indicate a
  492.                      single equation would be plotted.
  493.  
  494.  
  495.  Action type         Selecting an action option causes something
  496.                      immediately to be done.  An action is activated by
  497.                      pressing the space bar, the return key, or
  498.                      clicking the left mouse button.
  499.  Example:
  500.  Save                Saves current equations and settings to disk. 
  501.  
  502.  
  503.  Dialogue type       The program expects a response from you, such as a
  504.                      value or an equation.
  505.  Example:            The user is expected to enter in a function such
  506.  ƒ(x) =              as "sin(x)"
  507.  Example:             The user is expected to enter a number such as
  508.  x min =             "-2.5" or "2π"
  509.  
  510.                                  Wesley Loewer's Plotting Program -- WL-Plot
  511.  
  512.  
  513.  
  514.                                                                       Page 8
  515.  
  516.  Entering Information: 
  517.  When entering numeric values or functions, the following cursor keys are
  518.  provided to make editing easier.
  519.  
  520.       <Home>- Moves cursor to beginning of the line.
  521.       <End>  - Moves cursor to end of the line.
  522.       <Left>  - Moves cursor to one character to the left.
  523.       <Right> - Moves cursor to one character to the right.
  524.       <Ctrl-Left>  - Moves cursor to previous word.
  525.       <Ctrl-Right> - Moves cursor to next word.
  526.       <Left-Mouse> - Moves cursor to any location.
  527.  
  528.  
  529.  Entering Equations:
  530.  When entering equations, certain rules must be followed in order for the
  531.  equation parser to be able to correctly interpret the function.
  532.  
  533.  Algebraic Mode
  534.       Variable names must start with a non-digit, but may contain digits.
  535.       Examples: x, m1, Θ, _1f2 are all legal variable names.
  536.                 2x, 1m, 1_f2 are not valid names
  537.                      (interpreted as multiplication).
  538.  
  539.       Function names can be followed by a parenthesis.
  540.       Examples: sin(Θ), 3*cos(2π), Γ(2.1), √(x)  are all valid.
  541.                 sinΘ, cosa+b, √x are not valid.
  542.  
  543.       Functions names can be followed by spaces.  If no parenthesis follows
  544.       a function name, then a pair of parentheses are implied to be
  545.       surrounding the first term consisting of only implied multiplication.
  546.       (See Algebraic Order of Operations on p. 13 for evaluation order of
  547.       implied parentheses.)
  548.       Examples: sin Θ, 3 cos 2x  are both valid.
  549.  
  550.       The special function symbols for square-root, √ (<Ctrl-Shift-2>), and
  551.       gamma, Γ (<Ctrl-Shift-G>), do not require a parenthesis or space
  552.       following the symbol.
  553.       Examples:  Γx, √x, √2  are all valid.
  554.  
  555.       Implied multiplication is performed when possible.
  556.       Examples: 2x, 3 y, 2sin 1.5π , (1+x)(1-x)  are all valid.
  557.  
  558.       Also, implied multiplication is has a higher precedence than explicit
  559.       multiplication and division.  Implied multiplication can be treated as
  560.       if there are implied parentheses surrounding it.
  561.       Examples: 1/2x means 1/(2*x) while 1/2*x means (1/2)*x.
  562.                 sin 2x|c| means sin(2*x*abs(c)) 
  563.                 while sin 2x*|c| means sin(2*x)*abs(c)
  564.  
  565.       The use of |'s for absolute values are allowed.  The equation parser
  566.       will attempt to handle nested |'s if possible.
  567.       Examples: |x|, sqrt|x|, ||x|-1|, |1-|x||, ||x|-|c||   are all valid.
  568.                 ||x|-2|c|| is not valid since the 4th | is ambiguous at the
  569.                 time it is encountered.  |(|x|-2|c|)| would fix it.
  570.  
  571.       Intermediate results can be stored in a variable by using the "->"
  572.       operator, allowing for the use of composite functions.
  573.  
  574.                                  Wesley Loewer's Plotting Program -- WL-Plot
  575.  
  576.  
  577.  
  578.                                                                       Page 9
  579.  
  580.       Example: The underdamped motion equation used in physics is given to  
  581.            be A=A0*exp(-τ*t)*sin(w*t)/w where w=√(w0²-τ²), τ=b/2m, and
  582.            w0=√(k/m).  If a user had to substitute in for τ, w, and w0, it
  583.            would look like: 
  584.            "A0*exp(-b/2m*t)*sin(√(k/m-(b/2m)²)*t)/√(k/m-(b/2m)²)" which is a
  585.            rather messy formula.  It can be cleaned up a bit by using the
  586.            "->" store variable operator to look like: "b/2m->τ  √(k/m)->w0
  587.            √(w0²-τ²)->w  A0*exp(-τ*t)*sin(w*t)/w" which although is not any
  588.            shorter in length, is certainly more intuitive and less likely to
  589.            be mistyped than having all the nested parentheses.
  590.       Because of optimizations performed internally, both equations would
  591.       take about the same amount of time to graph.
  592.  
  593.  RPN Mode
  594.       All variables, constants and function names must be separated by
  595.       spaces.
  596.       Examples: 2 x * sin  is valid.
  597.                 2x sin  is not valid.
  598.  
  599.       The store variable operator "->" is also available in RPN mode.  The
  600.       example given in the Algebraic Mode section above would be entered as:
  601.       "b 2 m * / ->τ  k m / √ ->w0  w0 sq τ sq - √ ->w  A0 τ t * neg exp * w
  602.       t * sin * w /" which although looks quite messy itself, doesn't begin
  603.       to compare to the mess which would make even the most staunch RPN
  604.       purist hesitate if the "->" operator were not available: "A0 b 2 m * / 
  605.       t * neg exp * k m / b 2 m * / sq - √  t * sin * k m / b 2 m * / sq - √
  606.       /".  Again, because of internal optimizations, both forms would take
  607.       about the same amount of time to graph.
  608.  
  609.  Special Characters:
  610.  
  611.       Name         Symbol     Key Stroke
  612.  
  613.       alpha          α        <Ctrl-A>
  614.       beta           ß        <Ctrl-B>
  615.       delta          δ        <Ctrl-D>
  616.       epsilon        ε        <Ctrl-E>
  617.       phi            φ        <Ctrl-F>
  618.       Phi            Φ        <Ctrl-Shift-F>
  619.       gamma          τ        <Ctrl-G>
  620.       Gamma          Γ        <Ctrl-Shift-G>
  621.       infinity       ∞        <Ctrl-I>
  622.       mu             µ        <Ctrl-M>
  623.       omega          Ω        <Ctrl-O>
  624.       pi             π        <Ctrl-P>
  625.       sigma          σ        <Ctrl-S>
  626.       Sigma          Σ        <Ctrl-Shift-S>
  627.       theta          Θ        <Ctrl-T>
  628.       squared        ²        <Ctrl-2>
  629.       square-root    √        <Ctrl-Shift-2>
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.                                  Wesley Loewer's Plotting Program -- WL-Plot
  639.  
  640.  
  641.  
  642.                                                                      Page 10
  643.  
  644.  Functions and Constants:
  645.  The following functions and constants are predefined by the program:
  646.  
  647.  Constants:
  648.       3.141592653589793   pi or π <Ctrl-P>
  649.       2.718281828459045   e
  650.       3.402823466e+38     inf or infinity or ∞ <Ctrl-I> 
  651.       (used when "really big" number is needed)
  652.  
  653.  Variables:
  654.       use variable        p   (use variable p)
  655.       save in variable    ->p (save in variable p)
  656.  
  657.  Binary functions:
  658.       add             x+y
  659.       subtract        x-y
  660.       multiply        x*y  or  2x
  661.       divide          x/y
  662.       exponentiation  x^y
  663.       modulus         x mod y  or  mod(x,y)
  664.       combination     comb(n,r)
  665.       permutation     perm(n,r)
  666.       maximum         max(x,y)
  667.       minimum         min(x,y)
  668.  
  669.  Unary functions:
  670.       negation        -x  or  neg(x)
  671.       inverse         inv(x)
  672.       square root     sqrt(x) or √x
  673.       square          sq(x) or x²
  674.       round           round(x)
  675.       ceiling         ceil(x)       round up
  676.       floor           floor(x)      round down
  677.       integer         int(x)        truncate decimal
  678.       fractional      frac(x)
  679.       absolute value  abs(x)
  680.       sign            sign(x)
  681.       factorial       fact(n) or n!
  682.       gamma           gamma(x) or Γx
  683.       is value real?  isreal(x)
  684.  
  685.  Trigonometry functions: (in radians)
  686.       sine            sin(x)
  687.       inverse sine    asin(x)  or  arcsin(x)
  688.       cosine          cos(x)
  689.       inverse cosine  acos(x)  or  arccos(x)
  690.       tangent         tan(x)
  691.       inverse tan     atan(x)  or  arctan(x)
  692.       inverse tan2    atan2(x,y)  or  arctan2(x,y)
  693.       cotangent       cot(x)
  694.       inverse cot     acot(x)  or  arccot(x)
  695.       secant          sec(x)
  696.       inverse sec     asec(x)  or  arcsec(x)
  697.       cosecant        csc(x)
  698.       inverse csc     acsc(x)  or  arccsc(x)
  699.       rad to deg      raddeg(x)
  700.       deg to rad      degrad(x)
  701.  
  702.                                  Wesley Loewer's Plotting Program -- WL-Plot
  703.  
  704.  
  705.  
  706.                                                                      Page 11
  707.  
  708.  Logarithm related functions:
  709.       natural log     ln(x)
  710.       exponential     exp(x)
  711.       common log      log(x)
  712.       antilog         alog(x)  or  antilog(x)
  713.       log base n      logb(n,x)
  714.       hyperbolic sin  sinh(x)
  715.       inverse sinh    asinh(x)
  716.       hyperbolic cos  cosh(x)
  717.       inverse cosh    acosh(x)
  718.       hyperbolic tan  tanh(x)
  719.       inverse tanh    atanh(x)
  720.  
  721.  Bessel functions:
  722.       1st kind, 0     j_0(x)
  723.       1st kind, 1     j_1(x)
  724.       1st kind, n     j_n(n,x)
  725.       2nd kind, 0     y_0(x)
  726.       2nd kind, 1     y_1(x)
  727.       2nd kind, n     y_n(n,x)
  728.  
  729.  Trinary Function:
  730.       conditional if  if(b,t,f)
  731.  
  732.       If b is true (positive) then t will be use.  If b is false (not-
  733.       positive) use f.  
  734.            Ex: if(x>=0,3x,x^2)
  735.       The "if" is probably the single most powerful function here.  It
  736.       allows the user to perform branching of sorts.  Nested if's are
  737.       allowed.  For example the following pseudo-code
  738.            if x < 2
  739.                 then y = 3x^2
  740.            else if x < 5
  741.                 then y = 6x
  742.            else
  743.                 y = x^2+5
  744.       can be coded Algebraically as
  745.            if( x<2, 3x^2, if( x<5, 6x, x^2+5))
  746.       or in RPN as
  747.            x 2 < 3 x sq * x 5 < 6 x * x sq 5 + if if
  748.  
  749.  
  750.  
  751.  
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.                                  Wesley Loewer's Plotting Program -- WL-Plot
  767.  
  768.  
  769.  
  770.                                                                      Page 12
  771.  
  772.  Boolean Comparisons: (evaluates to 1 if true, 0 if false)
  773.       less than                a<b
  774.       greater than             a>b
  775.       less than or equal to    a<=b
  776.       greater than or equal to a>=b
  777.       equal to                 a=b
  778.       not equal to             a<>b
  779.       and                      a and b    or    and(a,b)
  780.       or                       a or b     or    or(a,b)
  781.       exclusive or             a xor b    or    xor(a,b)
  782.  
  783.       The result of a boolean comparison evaluates to 1 if true, 0 if the
  784.       result is false.  In numeric comparisons, non-real values cannot be
  785.       compared except in the case of "<>" when a real and a non-real are
  786.       always considered to be not equal.  Otherwise, reals compared to non-
  787.       real values are considered false.  This leads to the interesting
  788.       result that "sqrt(-1)>0" and "sqrt(-1)<0" are both considered false,
  789.       and "not(sqrt(-1)>0)" and "not(sqrt(-1)<0" are both considered true.
  790.  
  791.  Stack Functions: (available in RPN mode only)
  792.       duplicate bottom element      dup   or  push
  793.       drop bottom element           drop  or  pop
  794.       swap bottom two elements      swap
  795.       recall stack element n        n rcl
  796.       store in stack element n      n sto
  797.       roll bottom n elements        n roll
  798.         n must be a number.
  799.         If n is positive the stack rolls down, a negative n rolls up
  800.  
  801.  
  802.  Functions may be entered in either Algebraic or RPN notation.  Although the
  803.  Algebraic mode is recommended for general use, RPN mode has been provided
  804.  for compatibility with RPN calculators.  Also, complicated equations can
  805.  often be written more easily and graphed more quickly in RPN notation. 
  806.  There is no speed penalty for not manually calculating the intermediate
  807.  results from constants.  The constants are automatically combined before
  808.  graphing process starts.  Therefore the graph of
  809.       sqrt(ln(a)*b^12)*10! * x, where a=3.2, b=0.5, x=<independent>
  810.  will take no longer to plot than
  811.       61150.6492766 * x, where x=<independent>
  812.  Therefore, the speed gained by using RPN mode is often negligible.
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.                                  Wesley Loewer's Plotting Program -- WL-Plot
  831.  
  832.  
  833.  
  834.                                                                      Page 13
  835.  
  836.  In Algebraic mode, the following rules of order of operation are obeyed.
  837.  
  838.  Algebraic Order of Operations:
  839.  highest   parentheses ()
  840.            functions
  841.            ^
  842.            implied multiplication
  843.            implied parentheses following functions
  844.            *  /  mod
  845.            +  -
  846.            =  <>
  847.            <  <=  >  >=
  848.            and
  849.            xor
  850.            or
  851.  lowest    ->
  852.  
  853.  
  854.  Examples:
  855.  Algebraic:     a+b*sin(c*(t-d))
  856.  RPN:           a b c t d - * sin * +
  857.  
  858.  Algebraic:     sin 2x + 1        (interpreted as sin(2x) + 1)
  859.  RPN:           2 x * sin 1 +
  860.  
  861.  Algebraic:     (2x-1)(3x^2.5+2)  (note: the '*' is optional)
  862.  RPN:           2 x * 1 - 3 x 2.5 ^ * 2 + *
  863.  
  864.  Algebraic:     -1^2   (note: ^ is executed first. The result is -1)
  865.  RPN:           1 2 ^ neg
  866.  
  867.  Algebraic:     (-1)^2   (note: - is executed first. The result is +1)
  868.  RPN:           -1 2 ^     or     1 neg 2 ^
  869.  
  870.  Algebraic:     sqrt 9 * sqrt 16 (sqrt(9)*sqrt(16) = 3 * 4 = 12)
  871.  RPN:           9 sqrt 16 sqrt *
  872.  
  873.  Algebraic:     sqrt 9 sqrt 16 (sqrt(9*sqrt(16)) = sqrt(9*4) = 6)
  874.  RPN:           9 16 sqrt * sqrt
  875.  
  876.  Algebraic:     2(3(4+sin(.5)))^6  (result is 11778539.8142)
  877.  RPN:           2 3 4 .5 sin + * 6 ^ *
  878.  
  879.  Algebraic:     max(a,b)
  880.  RPN:           a b max
  881.  
  882.  Algebraic:     if(x>-2 and x<=2, 3x+2, abs(x))
  883.  RPN:           x -2 > x 2 <= and 3 x * 2 + x abs if
  884.  
  885.  Algebraic:     b²-4*a*c ->d  (-b+√d)/(2a)
  886.  RPN:           b ² 4 a * c * - ->d  b neg d √ + 2 a * /
  887.  
  888.  
  889.  
  890.  
  891.  
  892.  
  893.  
  894.                                  Wesley Loewer's Plotting Program -- WL-Plot
  895.  
  896.  
  897.  
  898.                                                                      Page 14
  899.  
  900.  Constants:
  901.  WL-Plot can use up to 10 variables at a time.  To indicate which variable
  902.  is to be the horizontal independent variable, move to that variable in the
  903.  "Constants" menu and enter an "i" or an "h".  The message 
  904.  "<independent variable>" will then appear.  Some modules allow you to
  905.  declare a variable as the vertical dependent variable by entering a "d" or
  906.  "v".  To get rid of old variables, select the "Purge Unused Constants"
  907.  option.
  908.  
  909.  Saving & Retrieving:
  910.  When a Save or Retrieve action is selected, the main menu is cleared and
  911.  another screen appears at the top of the screen prompting you for a file
  912.  name to use to save the data.  You can type in a file name, or if you have
  913.  a mouse, double click on a file name listed.  You do not have to put an
  914.  extension on your file names.  (For example, the file name "abcd.efg" has
  915.  the extension is ".efg".)  A default extension will be appended to
  916.  filenames which do not have an explicit extension.
  917.  
  918.  PCX Format:
  919.  The PCX format is a graphics format commonly used by other software, such
  920.  as painting, word processing, and desk-top publishing programs.  Therefore,
  921.  graphs saved with the "Save-PCX" option can be imported into these other
  922.  programs.  The filename extension for PCX files is ".pcx".
  923.  
  924.  
  925.  Printing:
  926.  To print a graph directly to a printer, DOS's GRAPHICS utility must be
  927.  loaded before starting the plotting menu.  To do this simply type
  928.  "graphics" at the DOS command line before typing "wlplot."  When you have a
  929.  graph that you would like printed, press the <Shift-PrtSc> key (or just
  930.  <PrntScrn> key on enhanced keyboards).  See your DOS manual for more
  931.  informatation on the GRAPHICS command if you have a laser or bubble jet
  932.  printer.  Note that DOS version 3.3 and earlier can only print CGA mode
  933.  graphics while version 4.0 and later can print EGA and VGA graphics as
  934.  well.  You can force the plotting program to use CGA mode graphics by
  935.  starting the program with "wlplot cga".  This allows you to print the
  936.  screen if your DOS version is prior to 4.0 even if you have a VGA card. 
  937.  You can also print a screen by saving it to a file by selecting "Save-PCX"
  938.  and then importing the PCX file into a painting or word processing program. 
  939.  This allows you to merge plots with other graphics into a document.  (See
  940.  "PCX Format" above.)  WL-Plot is also compatible with the Microsoft Windows
  941.  (tm) "copy to clipboard" feature using the <PrntScrn> key.
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.                                  Wesley Loewer's Plotting Program -- WL-Plot
  959.  
  960.  
  961.  
  962.                                                                      Page 15
  963.  
  964.                                Revision History
  965.  
  966.  2.31 Minor changes in documentation.
  967.  
  968.  2.3  Cleaned up the documentation a bit.
  969.  
  970.       Fixed incompatibility problems between explicit multiplication and
  971.       implied parenthesis.
  972.  
  973.  2.2  Complete overhaul of the Conic Section module.  Conic sections as well
  974.       as their degenerate shapes can be entered in either their standard
  975.       forms or in the general quadratic form.  Graphs can be easily rotated. 
  976.       Rotated graphs are now compatible with the "Show Asymptotes and Focal
  977.       Points" option.  Overall accuracy in the graph, especially rotated
  978.       graphs, is much improved.
  979.  
  980.  2.1  Added the ability to use expressions to enter constants.  For example,
  981.       at the prompt for a constant or a Min/Max, the expression 1+√3 can be
  982.       entered.
  983.  
  984.  2.0  For x and y min/max values, entering the same value for min and max
  985.       will no longer crash the program.  The max value will have 1.0 added
  986.       to it to keep the two from being equal.
  987.  
  988.       Fixed a bug that kept the Conic Sections module from plotting a
  989.       horizontal hyperbola when b=0.
  990.  
  991.       Now accepts √x for √(x) and Γx for Γ(x).
  992.  
  993.       Fixed a bug in the Conic Sections module that would sometimes keep
  994.       part of the graph from being plotted when using the General formula.
  995.  
  996.       Turning on/off the Use CGA option will no longer clear the Curve
  997.       Fitting information such as titles, subtitles, axis labels, etc...
  998.  
  999.  1.6  Fixed a quirk in the "Save PCX" routine that made the .pcx files
  1000.       incompatible with Windows 3.1 Paintbrush.  The old PCX routine was
  1001.       compatible with everything else that it was tested on (MS Paintbrush,
  1002.       WordPerfect, Photo Styler, PC Tools viewer, VPic, CShow...).
  1003.  
  1004.       Added the ability to plot indefinite integrals to the Derivatives &
  1005.       Integral module.
  1006.  
  1007.       Optimized the plotting process considerably for equations with lots of
  1008.       constants.  Operations performed on constants are now evaluated once
  1009.       before plotting begins rather than repeating the calculation over and
  1010.       over while the equation is being graphed.
  1011.  
  1012.       Changed the way implied parenthesis and implied multiplication is
  1013.       handled.  The new order of operations are: implied multiplication;
  1014.       implied parentheses; explicit multiplication, division, modulus.
  1015.  
  1016.       Added the ability to use |x| to represent the absolute value.  The
  1017.       function abs(x) is still available.
  1018.  
  1019.  
  1020.  
  1021.  
  1022.                                  Wesley Loewer's Plotting Program -- WL-Plot
  1023.  
  1024.  
  1025.  
  1026.                                                                      Page 16
  1027.  
  1028.       When viewing a graph, the show coordinates option can now display
  1029.       polar (r,Θ) coordinates, either degrees or radians, in addition to the
  1030.       normal cartesian (x,y) coordinates.
  1031.  
  1032.       Recompiled with updated graphics library.
  1033.  
  1034.       Added the Recursive Relation Plotter Module.  Very useful for
  1035.       examining certain recursive relations such as the Mandelbrot equation,
  1036.       Henon Attractors, etc...
  1037.  
  1038.  1.51 Added a switch in the Functions module to turn off radians mode so
  1039.       that users could more easily deal with degrees.
  1040.  
  1041.       Fixed a small Functions module bug which would not bring up the
  1042.       correct help screen when entering a second function when graphing
  1043.       simultaneous functions or when using Parametric mode.
  1044.  
  1045.  
  1046.  1.5 WAS THE LAST PUBLIC RELEASE BEFORE 2.31
  1047.  ********************************************
  1048.  1.5  Now accepts special characters in variable, constant, and function
  1049.       names such as π, φ, ß, √, and Γ.  (see Special Characters on p. 9)
  1050.  
  1051.       Added the unary function "gamma."
  1052.  
  1053.       Removed the need for parentheses after functions.  A space is still
  1054.       required after a function name to distinguish it from a user defined
  1055.       variable.
  1056.       Examples: sin Θ  is allowed for  sin(Θ)
  1057.                 √ x    is allowed for  √(x)
  1058.  
  1059.       Improved the cursor movement for easier editing of equations.
  1060.  
  1061.       Added the RPN Mode function names "push" and "pop" to be synonyms for
  1062.       "dup" and "drop" respectively.
  1063.  
  1064.       The distribution was changed so that all of the different modules of
  1065.       WL-Plot were combined into a single executable file.  This reduces the
  1066.       size of the distributed .exe file to less than 40% of the size of
  1067.       previous distributions.  See Custom Distributions below (p. 19) if you
  1068.       have need for stand alone modules or a non-overlaid program.
  1069.  
  1070.       The short-cut keys for zooming in on a graph were changed to from <F1>
  1071.       and <F2> to <F3> and <F4> so that <F1> could be reserved for use as
  1072.       the context sensitive help key.
  1073.  
  1074.       The equation is no longer printed on the screen when the graph is
  1075.       plotted.  This feature had to be dropped since the .fon font file does
  1076.       not support extended ASCII characters such as π or Γ.
  1077.  
  1078.       Added extensive context sensitive on-line help.
  1079.  
  1080.       Moved much of the documentation from WLPLOT.DOC to WLPLOT.HLP.
  1081.  
  1082.       Changed the name of the Standard Form conic equation to the General
  1083.       Form conic equation to be more consistent with text books.
  1084.  
  1085.  
  1086.                                  Wesley Loewer's Plotting Program -- WL-Plot
  1087.  
  1088.  
  1089.  
  1090.                                                                      Page 17
  1091.  
  1092.       Fixed some problems with Hercules graphics adapters.  Also added
  1093.       MSHERC.COM to the distribution for Hercules users.  Still does not
  1094.       return from the <F1> help feature correctly unless a plot has already
  1095.       been graphed.  (I haven't got a clue as to why.)
  1096.  
  1097.       The prompts for real number values can now accept multiples of pi by
  1098.       using <Ctrl-P>  to produce "π" as in "2.5π" or "-π" which causes the
  1099.       value to be multiplied.  Multiplication of a number by pi is the only
  1100.       operation allowed.
  1101.  
  1102.  1.12 Fix a bug in the Conic Section plotter that would occasionally cause
  1103.       the program to abort when trying to plot a General Form equation.
  1104.  
  1105.  1.11 Changed maximum equation length from 80 characters to 200.
  1106.  
  1107.       Now prevents steps=0, which caused "division by zero" problems.  Also
  1108.       now correctly reports large number of steps.
  1109.  
  1110.       In the Conic Section program, added the automatic conversion to the
  1111.       General form.
  1112.  
  1113.  1.1  Changed the menu program filename from the more descriptive
  1114.       "plotmenu.exe" to the more rewarding "wlplot.exe."  Also changed the
  1115.       name of the relation plotter from "last.exe" to "relat.exe."
  1116.  
  1117.       The name of the trinary function "ifte" (if-then-else) was shortened
  1118.       to "if."  The name "ifte" is still legal for the sake of 
  1119.       compatibility.
  1120.  
  1121.       Changed the method of error trapping to allow better handling of the
  1122.       if(boolean,true statement,false statement).  Now, 
  1123.                      if( x<0 , x , sqrt(x) )
  1124.       is properly evaluated when x<0.  Before, both the true and false
  1125.       statements had to evaluate to a real number in order for the result to
  1126.       be evaluated.  Now, only the final answer of an expression must
  1127.       evaluate to a real number.
  1128.  
  1129.       Added the unary function "isreal" (is it real)
  1130.  
  1131.       Changed the names of the Bessel functions from j0, j1, jn, y0, y1, and
  1132.       yn to j_0, j_1, j_n, y_0, y_1, and y_n.
  1133.  
  1134.       The Relation Plotter was speeded up considerably.  It is also
  1135.       considerably more accurate.  This speed and accuracy improvement is a
  1136.       consequence of having the program automatically reduce the pixel
  1137.       resolution value at the borders between two regions.  (Thanks goes to
  1138.       The Stone Soup Group's Fractint for the "solid guessing" speed up
  1139.       concept.)
  1140.  
  1141.       The way in which numeric values are converted into boolean values was
  1142.       changed.  Values greater than zero are considered true, while values
  1143.       less than or equal to zero are false.  Also, non-real values are
  1144.       considered false.  Previously, only values equal to zero were
  1145.       considered false and non-real values were not evaluated at all.  
  1146.  
  1147.  
  1148.  
  1149.  
  1150.                                  Wesley Loewer's Plotting Program -- WL-Plot
  1151.  
  1152.  
  1153.  
  1154.                                                                      Page 18
  1155.  
  1156.       An option to turn the axis on or off has been added.  If Show Axis is
  1157.       turned off, then the function is graphed on a blank screen.  Show Axis
  1158.       overrides the Grid option.
  1159.  
  1160.       Selecting "Save" now stores the current equation(s) and settings to a
  1161.       file.  Previously, a bit-mapped image was saved to disk along with
  1162.       some of the settings.  Retrieved files must now be regenerated, but
  1163.       they are a tiny fraction of the size of a bit-mapped image file.
  1164.  
  1165.  1.01 Fixed garbled error messages for certain RPN stack errors.
  1166.  
  1167.  
  1168.  1.0  Original Program
  1169.  
  1170.  
  1171.  Plans for future releases include:
  1172.  - A 3-d Function Plotting module.
  1173.  - A Polynomial Plotting module.
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.  
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.  
  1196.  
  1197.  
  1198.  
  1199.  
  1200.  
  1201.  
  1202.  
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.                                  Wesley Loewer's Plotting Program -- WL-Plot
  1215.  
  1216.  
  1217.  
  1218.                                                                      Page 19
  1219.  
  1220.                              Custom Distributions
  1221.  
  1222.  The current release of WL-Plot comes with a single executable file,
  1223.  WLPLOT.EXE, which contains all of the plotting modules.  If for some
  1224.  reason, you prefer to use the overlaid version or the stand alone version,
  1225.  custom orders may be made.  In general, programs with overlays require less
  1226.  memory, but more disk space and take a bit longer to load.  Overlaid
  1227.  programs also required disk access even after the program has been loaded,
  1228.  making the program run slower on floppy drive and network systems. 
  1229.  Programs without overlays can be used with executable compression programs
  1230.  such as PKLITE (tm), DIET, and LZEXE which can reduce the size of an
  1231.  executable file to about half its original size.  In order to allow WL-Plot
  1232.  to fit on a single 360K floppy drive, the standard version executable file
  1233.  has already been compressed with PKLITE ver. 1.15.  Below is a summary of
  1234.  the three different ways WL-Plot can be distributed.
  1235.  
  1236.  Combined Modules (standard version)
  1237.       Best version if the memory is available.
  1238.  
  1239.  Combined Modules with Overlays (w.o. version)
  1240.       Requires more disk space, but less memory.
  1241.  
  1242.  Stand Alone Modules (s.a. version)
  1243.       Each module comes as a separate program.  This requires the least
  1244.       amount memory and disk space if only one program is used.  This is the
  1245.       only version that will work on computers with only 256K of memory. 
  1246.       This version is also valuable if being run from a 360K floppy drive
  1247.       since each of the modules can be placed on a different disk.
  1248.  
  1249.  To order a Custom Distribution, send the description of the desired
  1250.  configuration and $15 to the address listed at the bottom of this file.
  1251.  
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.  
  1258.  
  1259.  
  1260.  
  1261.  
  1262.  
  1263.  
  1264.  
  1265.  
  1266.  
  1267.  
  1268.  
  1269.  
  1270.  
  1271.  
  1272.  
  1273.  
  1274.  
  1275.  
  1276.  
  1277.  
  1278.                                  Wesley Loewer's Plotting Program -- WL-Plot
  1279.  
  1280.  
  1281.  
  1282.                                                                      Page 20
  1283.  
  1284.                                   In Closing
  1285.  
  1286.  A special word of thanks goes to my Physics and Math students who
  1287.  unknowingly were my original beta testers.  They are the reason I put this
  1288.  program together and made thit publicly available.
  1289.  
  1290.                                 Please Read!!!
  1291.  This program is intended for use in educational settings only.  As a
  1292.  teacher, my reward comes from knowing that my efforts have been fruitful. 
  1293.  Although donations would be appreciated, the only payment that I ask is
  1294.  that each user send a letter or postcard letting me know that he/she is
  1295.  using my program.  Teachers may send a single letter with the names (or at
  1296.  least the number) of students using the program each year.  This serves no
  1297.  purpose other than to give me a pat on the back and to let me know that I
  1298.  have contributed to the education of more people than I could have reached
  1299.  directly.  (I call it ego-ware.)
  1300.  
  1301.  If WL-Plot should prove useful to someone outside of an educational setting
  1302.  (such as in a job or even research), a reasonable payment of $25 is
  1303.  required.
  1304.  
  1305.                   Copyright is retained by Wesley B. Loewer.
  1306.  
  1307.  This program may be freely distributed.  A small distribution fee may be
  1308.  charged to cover the cost of the distribution.  This program may not be
  1309.  sold without the expressed written consent of the author.  This program may
  1310.  not be included as part of a package with other materials such as text
  1311.  books without written permission from the author.  All rights to this
  1312.  program belong to the author.
  1313.  
  1314.  
  1315.  If you are a teacher and would like to swap ideas on how this program can
  1316.  be used in class, or if you are in the Houston area and are interested in
  1317.  an inservice at your school, feel free to contact me.
  1318.  
  1319.  Please send questions, suggestions, and contributions to:
  1320.  
  1321.       Wesley B. Loewer        or     Wesley B. Loewer
  1322.       78 S. Circlewood Glen          McCullough High School
  1323.       The Woodlands, TX  77381       3800 S. Panther Creek Dr.
  1324.       (713) 292-3449                 The Woodlands, TX  77381
  1325.                                      (713) 367-1025 ext. 251
  1326.  
  1327.       Internet: loewer@largo.star.harc.edu
  1328.  
  1329.  
  1330.  
  1331.  
  1332.  
  1333.  
  1334.  
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341.  
  1342.                                  Wesley Loewer's Plotting Program -- WL-Plot
  1343.